مفاهيم اوليه پروتکل TCP/IP
 
بزرگترین وبلاگ دانلود و ارائه مقالات رشته کامپیوتر
دانلود پروژه های رشته کامپیوتر و ویژوال بیسیک
سه شنبه 1 آذر 1390برچسب:, :: 19:41 ::  نويسنده : سید رضا هاشمیان Mr.Anderson

مفاهيم اوليه پروتکل TCP/IP

پروتکل TCP  : لايه Transport

 TCP) Transmission Control Protocol) ، يکی از پروتکل های استاندارد TCP/IP است که امکان توزيع و عرضه اطلاعات ( سرويس ها) بين صرفا" دو کامپيوتر ، با ضريب اعتماد بالا را  فراهم می نمايد. چنين ارتباطی ( صرفا" بين دو نقطه ) ، Unicast ناميده می شود . در ارتباطات با رويکرد اتصال گرا ، می بايست قبل از ارسال داده ، ارتباط بين دو کامپيوتر برقرار گردد . پس از برقراری ارتباط ، امکان ارسال اطلاعات برای صرفا" اتصال ايجاد شده ، فراهم می گردد . ارتباطات از اين نوع  ، بسيار مطمئن می باشند ، علت اين امر به تضمين توزيع اطلاعات برای مقصد مورد نظر برمی گردد . بر روی کامپيوتر مبداء ، TCP داده هائی که می بايست ارسال گردند را در بسته های اطلاعاتی (Packet) سازماندهی می نمايد. در کامپيوتر مقصد ، TCP ، بسته های اطلاعاتی را تشخيص و داده های اوليه را مجددا" ايجاد خواهد کرد .

ارسال اطلاعات با استفاده  از TCP
TCP
، بمنظور افزايش کارائی ، بسته های اطلاعاتی را بصورت گروهی ارسال می نمايد . TCP ، يک عدد سريال ( موقعيت يک بسته اطلاعاتی نسبت به تمام بسته اطلاعاتی ارسالی )  را به هريک از بسته ها نسبت داده و از Acknowledgment بمنظور اطمينان از دريافت گروهی از بسته های اطلاعاتی ارسال شده ، استفاده می نمايد. در صورتيکه کامپيوتر مقصد ، در مدت زمان مشخصی نسبت به اعلام وصول بسته های اطلاعاتی ، اقدام ننمايد ، کامپيوتر مبداء ، مجددا" اقدام به ارسال اطلاعات می نمايد. علاوه برافزودن يک دنباله عددی و Acknowledgment به يک بسته اطلاعاتی ، TCP اطلاعات مربوط به پورت مرتبط با برنامه ها ی مبداء و مقصد را نيز به بسته اطلاعاتی اضافه می نمايد. کامپيوتر مبداء ، از پورت کامپيوتر مقصد بمنظور هدايت صحيح بسته های اطلاعاتی به برنامه مناسب بر روی کامپيوتر مقصد ، استفاده می نمايد.  کامپيوتر مقصد از پورت کامپيوتر مبداء بمنظور برگرداندن اطلاعات به برنامه ارسال کننده در کامپيوتر مبداء ، استفاده  خواهد کرد .
هر يک از کامپيوترهائی که تمايل به استفاده از پروتکل TCP بمنظور ارسال اطلاعات دارند ، می بايست قبل از مبادله اطلاعات ، يک اتصال بين خود ايجاد نمايند . اتصال فوق ، از نوع مجازی بوده و Session ناميده می شود .دو کامپيوتر درگير در ارتباط ، با استفاده از TCP  و بکمک فرآيندی با نام : Three-Way handshake  ، با يکديگر مرتبط و هر يک پايبند به رعايت اصول مشخص شده در الگوريتم مربوطه خواهند بود .  فرآيند فوق ، در سه مرحله صورت می پذيرد :

  • مرحله اول : کامپيوتر مبداء ، اتصال مربوطه را از طريق ارسال اطلاعات مربوط به Session ، مقداردهی اوليه می نمايد ( عدد مربوط به موقعيت يک بسته اطلاعاتی بين تمام بسته های اطلاعاتی و اندازه مربوط به بسته اطلاعاتی )
  • مرحله دوم : کامپيوتر مقصد ، به اطلاعات Session  ارسال شده ، پاسخ مناسب را خواهد داد .
  • کامپيوتر مبداء ، از شرح واقعه بکمک Acknowledgment  ارسال شده توسط کامپيوتر مقصد ، آگاهی پيدا خواهد کرد .

پروتکل UDP : لايه Transport

UDP) User Datagram Protocol )  ،  پروتکلی  در سطح لايه "حمل" بوده که برنامه مقصد در شبکه را مشخص نموده و از نوع بدون اتصال است . پروتکل  فوق، امکان توزيع اطلاعات با سرعت مناسب  را ارائه ولی در رابطه با تضمين صحت ارسال اطلاعات ، سطح مطلوبی از اطمينان را بوجود نمی آورد . UDP  در رابطه با داده های دريافتی توسط مقصد ، به Acknowledgment نيازی نداشته و در صورت بروز اشکال و يا خرابی در داده های ارسال شده ، تلاش مضاعفی بمنظور ارسال مجدد داده ها ، انجام نخواهد شد . اين بدان معنی است که داده هائی کمتر ارسال می گردد ولی هيچيک از داده های دريافتی و صحت تسلسل  بسته های اطلاعاتی ، تضمين نمی گردد .از پروتکل فوق ،  بمنظور انتقال اطلاعات به چندين کامپيوتر با استفاده از Broadcast و يا Multicast ، استفاده بعمل می آيد . پروتکل UDP ،  در موارديکه حجم اندکی از اطلاعات ارسال و يا اطلاعات دارای اهميت بالائی نمی بانشد ، نيز استفاده می گردد. استفاده از پروتکل UDP در مواردی همچون  Multicasting Streaming media ، (نظير يک ويدئو کنفرانس زنده)  و يا انتشار ليستی از اسامی کامپيوترها  که بمنظور ارتباطات محلی استفاده می گردند ، متداول است . بمنظور استفاده از UDP ، برنامه مبداء می بايست پورت UDP خود را مشخص نمايد دقيقا" مشابه عملياتی که می بايست کامپيوتر مقصد انجام دهد . لازم به يادآوری است که پورت های UDP از پورت های TCP مجزا و متمايز می باشند (حتی اگر دارای شماره پورت يکسان باشند ).

پروتکل IP  : لايه Internet

IP)  Internet Protocol ) ، امکان مشخص نمودن محل کامپيوتر مقصد در يک شبکه ارتباطی را فراهم می نمايد. IP ، يک پروتکل بدون اتصال و غيرمطمئن بوده که اولين مسئوليت آن آدرس دهی بسته های اطلاعاتی و روتينگ بين کامپيوترهای موجود در شبکه است . با اينکه IP همواره سعی در توزيع يک بسته اطلاعاتی می نمايد ، ممکن است يک بسته اطلاعاتی در زمان ارسال گرفتار مسائل متعددی نظير : گم شدن  ، خرابی  ، عدم توزيع با اولويت مناسب ، تکرار در ارسال و يا  تاخير، گردند.در چنين مواردی ، پروتکل IP تلاشی بمنظور حل مشکلات فوق را انجام نخواهد داد ( ارسال مجدد اطلاعات درخواستی ) .آگاهی  از وصول بسته اطلاعاتی  در مقصد  و بازيافت بسته های اطلاعاتی گم شده ، مسئوليتی است که بر عهده يک لايه بالاتر نظير TCP و يا برنامه  ارسال کننده اطلاعات ، واگذار می گردد .

عمليات انجام شده توسط IP
می توان IP را بعنوان مکانی در نظر گرفت که عمليات مرتب سازی و توزيع بسته های اطلاعاتی در آن محل ، صورت می پذيرد .بسته ها ی اطلاعاتی  توسط يکی از پروتکل های لايه حمل ( TCP و يا UDP)  و يا از طريق لايه " ايترفيس شبکه " ،  برای IP  ارسال می گردند . اولين وظيفه IP ، روتينگ بسته های اطلاعاتی بمنظور ارسال  به مقصد نهائی است . هر بسته اطلاعاتی ، شامل آدرس IP مبداء ( فرستنده ) و آدرس IP مقصد ( گيرنده ) می باشد. در صورتيکه IP ، آدرس مقصدی  را مشخص نمايد که در همان سگمنت موجود باشد ، بسته اطلاعاتی مستقيما"  برای کامپيوتر مورد نظر ارسال می گردد . در صورتيکه آدرس مقصد در همان سگمنت نباشد ، IP ، می بايست از يک روتر استفاده و اطلاعات را برای آن ارسال نمايد.يکی ديگر از وظايف IP ، ايجاد اطمينان از عدم وجود يک بسته اطلاعاتی ( بلاتکليف ! ) در شبکه است . بدين منظور محدوديت زمانی خاصی در رابطه با مدت زمان حرکت بسته اطلاعاتی در طول شبکه ، در نظر گرفته می شود .عمليات فوق،  توسط نسبت دادن يک مقدار TTL)Time To Live) به  هر يک از بسته های اطلاعاتی صورت می پذيرد. TTL ، حداکثر مدت زمانی را  که بسته اطلاعاتی قادر به حرکت در طول شبکه است را مشخص می نمايد( قبل از اينکه بسته اطلاعاتی  کنار گذاشته شود) .

پروتکل ICMP   : لايه Internet

 ICMP) Internet Control Message Protocol)  ، امکانات لازم در خصوص اشکال زدائی  و گزارش خطاء در رابطه با  بسته های اطلاعاتی غيرقابل توزيع  را  فراهم می نمايد. با استفاده از ICMP ، کامپيوترها و روترها که از IP بمنظور ارتباطات  استفاده می نمايند ، قادر به گزارش خطاء و مبادله اطلاعاتی محدود در رابطه  وضعيت  بوجود آمده  می باشند. مثلا" در صورتيکه IP ، قادر به توزيع يک بسته اطلاعاتی به مقصد مورد نظر نباشد ، ICMP يک پيام مبتنی بر غيرقابل دسترس بودن  را برای کامپيوتر مبداء ارسال می دارد .  با اينکه پروتکل IP بمنظور انتقال داده بين روترهای متعدد استفاده می گردد ، ولی  ICMP  به نمايندگی از TCP/IP ، مسئول ارائه  گزارش خطاء و يا  پيام های کنترلی است . تلاش ICMP  ، در اين جهت نيست که  پروتکل IP  را بعنوان يک پروتکل مطمئن مطرح نمايد ، چون پيام های ICMP  دارای هيچگونه محتوياتی  مبنی بر اعلام وصول پيام (Acknowledgment )  بسته اطلاعاتی نمی باشند . ICMP ، صرفا" سعی در گزارش خطاء  و ارائه فيدبک های  لازم در رابطه با  تحقق يک وضعيت خاص را می نمايد .

پروتکل  IGMP   : لايه Internet

IGMP) Internet Group Managment Protocol) ، پروتکلی است که مديريت ليست اعضاء برای  IP Multicasting  ، در يک شبکه  TCP/IP را بر عهده دارد . IP Multicasting، فرآيندی است که بر اساس آن يک پيام برای  گروهی انتخاب شده از گيرندگان که گروه multicat  ناميده می شوند ؛ ارسال می گردد . IGMP ليست اعضاء را  نگهداری می نمايد .
مديريت IP Multicasting
تمامی اعضاء يک گروه multicast  ، به ترافيک IP هدايت شده به يک آدرس Multicast IP ، گوش داده و بسته های اطلاعاتی ارسال شده به آن آدرس را دريافت می نمايند. زمانيکه چندين کامپيوتر نيازمند دستيابی به اطلاعاتی نظير Streaming media باشند، يک آدرس IP رزوشده برای multicasting  استفاده می گردد. روترها که بمنظور پردازش multicast پيکربندی می گردند، اطلاعات را انتخاب و آنها را برای تمامی مشترکين گروه multicast ارسال ( Forward ) می نمايند .  بمنظور رسيدن اطلاعات Multicast به گيرندگان مربوطه ، هر يک از روترهای موجود در مسير ارتباطی می بايست ، قادر به حمايت از Multicasting باشند . کامپيوترهای مبتنی بر سيستم عامل وينوز 2000 ، قادر به ارسال و دريافت  IP Multicast  ، می باشند .

پروتکل ARP : لايه Internet

 ARP) Address Resolution Protocol) ، پروتکلی است که  مسئوليت مسئله " نام به آدرس" را در رابطه با  بسته های اطلاعاتی خروجی (Outgoing) ، برعهده دارد . ماحصل فرآيند فوق ،  Mapping  آدرس IP به آدرسMAC )Media Access Control) ، مربوطه  است . کارت شبکه از آدرس MAC ،  بمنظور تشخيص تعلق يک بسته اطلاعاتی به کامپيوتر مربوطه ، استفاده می نمايند . بدون آدرس های MAC ، کارت های شبکه ، دانش لازم در خصوص ارسال بسته های اطلاعاتی به لايه بالاتر  بمنظور پردازش های مربوطه را  دارا نخواهند بود . همزمان با رسيدن بسته های اطلاعاتی به لايه IP  بمنظور ارسال در شبکه ، آدرس های MAC مبداء و مقصد به آن اضافه می گردد .
ARP ، از جدولی خاص بمنظور ذخيره سازی آدرس های IP و MAC مربوطه ، استفاده می نمايد. محلی از حافظه که جدول فوق در آنجا ذخيره می گردد ، ARP Cache ناميده می شود. ARP Cache هر کامپيوتر شامل  mapping  لازم  برای کامپيوترها و روترهائی است که  صرفا"  بر  روی يک سگمنت مشابه قرار دارند.
Physical Address Resolution 
پروتکل ARP ، آدرس IP مقصد هر يک از بسته های اطلاعاتی خروجی را با ARP Cache مقايسه تا آدرس MAC  مقصد مورد نظر را بدست آورد . در صورتيکه موردی  پيدا گردد  ، آدرس MAC از Cache بازيابی می گردد . در غير اينصورت ؛ ARP درخواستی را برای کامپيوتری که مالکيت IP را برعهده دارد ، Broadcast  نموده و از وی می خواهد که آدرس MAC خود را اعلام نمايد . کامپيوتر مورد نظر ( با IP مربوطه ) ، در ابتدا آدرس MAC کامپيوتر ارسال کننده درخواست را به Cache خود اضافه نموده و در ادامه پاسخ لازم را از طريق ارسال آدرس MAC خود ، به متقاضی خواهد داد . زمانيکه پاسخ ARP توسط درخواست کننده ، دريافت گرديد ، در ابتدا با استناد به اطلاعات جديد دريافتی، Cache مربوطه  بهنگام و در ادامه بسته اطلاعاتی به مقصد کامپيوتر مورد نظر ارسال می گردد .
در صورتيکه مقصد يک بسته اطلاعاتی ، سگمنتی ديگر باشد ، ARP ، آدرس MAC را به روتر مسئول در سگمنت مربوطه ، تعميم  خواهد داد ( در مقابل آدرس مربوط به کامپيوتر مقصد ) . روتر ، در ادامه مسئول يافتن آدرس MAC مقصد و يا Forwarding بسته اطلاعاتی برای روتر ديگر است .

برنامه های عيب يابی
برنامه های عيب يابی ، امکان  تشخيص و برطرف نمودن مسائل مرتبط با شبکه را برای کاربران فراهم می نمايند. برخی از اين ابزارها  عبارتند از :

  • ARP . برنامه فوق ، Cache مربوط به ARP) Addreee Resolution Protocol)   را نمايش و امکان اصلاح آن را فراهم می نمايد . بمنظور استفاده از برنامه فوق ، کافی است  ARP -a را در خط دستور تايپ و در ادامه جدول  مربوط به ARP Cache ، نمايش داده می شود. با استفاده از برنامه فوق می توان يک Entry  ايستا را به جدول مربوطه اضافه ( arp  -s  157.55.85.212  00-aa-00-62-c6-09 ) ، و يا اقدام به حذف يک host از جدول نمود (  arp -d  ) .

  • Hostname . برنامه فوق ، نام کامپيوتر ميزبان را نمايش می دهد . برای استفاده از برنامه فوق ، کافی است Hostname را در خط دستور ، تايپ و نام کامپيوتر خود را مشاهده نمود.

  • IPConfig . برنامه فوق ، پيکربندی جاری پروتکل TCP/IP را نمايش ( آدرس IP  ، آدرس فيزيکی ، نام کامپيوتر و ...  ) و امکان بهنگام سازی آن را فراهم می نمايد. بمنظور آشنائی با پتانسيل های برنامه فوق ، ipcongig/help را در خط دستور تايپ تا با  عملکرد اين برنامه و سوئيچ های مربوطه آشنا گرديد .

  • Nbtstat . برنامه فوق ، جدول محلی اسامی NetBIOS  را نمايش می دهد .جدول فوق ، شامل ليستی از اسامی کامپيوتر ها  بهمراه  IP مربوطه است (  mapping )

  • Netstat . برنامه فوق ، اطلاعات مربوط به جلسه کاری (Session)  پروتکل TCP/IP  را نمايش می دهد .

  • Ping . برنامه فوق ، پيکربندی و ارتباط مبتنی بر IP بين دو کامپيوتر را بررسی و تست می نمايد. Ping يک درخواست ICMP را از کامپيوتر مبداء ارسال و کامپيوتر مقصد از طريق يک پاسخ ICMP به آن جواب خواهد داد .بمنظور تست ارتباط با استفاده از يک آدرس IP  و يا نام يک کامپيوتر ، فرمان [ PING [IP_Address or Computer_Name  را تايپ نمائيد. بمنظور تست پيکربندی TCP/IP بر روی کامپيوتر خود ، از Local  Loopback  استفاده نمائيد . Local  loopback  ، شامل آدرس  127.0.0.1 است. ( Ping 127.0.0.1 )

  • Tracert . برنامه فوق ، رديابی يک بسته اطلاعاتی تا رسيدن به مقصد مورد نظر را انجام می دهد .

برنامه های ارتباطی
برنامه های  فوق ، امکان ارتباط  با مجموعه وسيعی از سيستم های مبتنی بر ويندوز و يا غيرويندوز نظير سيستم های يوينيکس ، را در اختيار کاربران قرار می دهند . با اينکه اين نوع از برنامه ها امکان ارسال سريع اطلاعات را فراهم می نمايند ولی با توجه به ماهيت ارسال اطلاعات توسط آنان ( تمامی اطلاعات شامل اطلاعات مربوط به تائيد اعتبار و هويت کاربران بصورت متن شفاف ارسال می گردد ) ، می بايست دقت لازم صورت پذيرد .موارد زير نمونه هائی از برنامه های ارتباطی می باشند : 

  • FTP . برنامه فوق،  با استفاده از پروتکل TCP ، اقدام به ارسال فايل بين ويندوز 2000 و کامپيوترهائی که بر روی  آنان نرم افزار سرويس دهنده FTP نصب شده است ، می نمايد .

  • Telnet . برنامه فوق ، امکان ارتباط از راه دور به منابع شبکه موجود در کامپيوترهائی که سرويس دهنده Telnet  بر روی آنان نصب شده است  را فراهم می نمايد .

  • Tftp . برنامه فوق از پروتکل UDP ، برای ارسال فايل های کوچک بين ويندوز 2000 و کامپيوترهائی که بر روی آنان سرويس دهنده TFTP)Trivial File Transfer Protocol )  نصب شده است را فراهم می نمايد.

نرم افزارهای سمت سرويس دهنده
اين نوع نرم افزارها امکان چاپ و انتشار سرويس ها را برای سرويس گيرندگان مبتنی بر TCP/IP در ويندوز 2000 ، فراهم می نمايد.

  • سرويس چاپ TCP/IP . برنامه فوق ، سرويس استاندارد چاپ TCP/IP را ارائه می نمايد. سرويس فوق ، امکان ارسال چاپ را برای  کامپيوترهائی که بر روی آنان سيستم های عاملی بجز ويندوز 2000 نصب شده باشد ، به  چاپگر های متصل شده به يک کامپيوتر مبتنی بر ويندوز 2000 ، فراهم می نمايد .

  • سرويس های اطلاعاتی اينترنت (IIS) .  برنامه IIS ، نرم افزارهای سرويس دهنده  متعددی نظير وب ، اخبار ، پست الکترونيکی  و ارسال فايل مبتنی بر TCP/IP  را در اختيار قرار می دهد. IIS  ، در سيستم هائی که از نسخه های Server ويندوز 2000 استفاده می نمايند ، بصورت پيش فرض نصب می گردد . پيشنهاد می گردد در صورتيکه به عملکرد اين برنامه نيازی وجود ندارد ، اقدام به حذف (Uninstall )  آن از روی سيستم نمود .

مثال
مثال 1 - هدف : استفاده از برنامه  Ping بمنظور اطمينان از صحت عملکرد پروتکل TCP/IP

  • مرحله يک : بعنوان يک کاربر مجاز ، به شبکه وارد شويد .
  • مرحله دو  : گزينه Command Prompt را از مسير  Start | Programs | Accessories  انتخاب نمائيد. 
  • مرحله سه :  دستور Ping 127.0.0.1 را در پنجره مربوطه تايپ نمائيد .

نتايج : پس از انجام مراحل فوق ، نتايج زير می بايست نشان داده شود :

  • نتيجه يک : می بايست چهار بسته اطلاعاتی ارسال و چهار بسته اطلاعاتی دريافت و هيچگونه بسته اطلاعاتی  گم نگردد . در غير اينصورت در رابطه با نصب TCP/IP مشکلاتی وجود دارد .
  • نتيجه دو  : در صورتيکه چهار بسته اطلاعاتی ارسال و دريافت گردد ، نشاندهنده صحت عملکرد و نصب پروتکل TCP/IP است .
نتايج حاصل از اجرای  برنامه Ping

C:>ping 127.0.0.1
Pinging 127.0.0.1 with 32 bytes of data:

Reply from 127.0.0.1: bytes=32 time<10ms TTL=128
Reply from 127.0.0.1: bytes=32 time<10ms TTL=128
Reply from 127.0.0.1: bytes=32 time<10ms TTL=128
Reply from 127.0.0.1: bytes=32 time<10ms TTL=128

Ping statistics for 127.0.0.1:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms

مثال 2 -  هدف : استفاده از برنامه های  Ping  و Hostname بمنظور صحت عملکرد TCP/IP

  • مرحله يک : بعنوان يک کاربر مجاز ، به شبکه وارد شويد .
  • مرحله دو  : گزينه Command Prompt را از مسير  Start | Programs | Accessories  انتخاب نمائيد.
  • مرحله سه : در پنجره مربوطه ، دستور hostname را تايپ نمائيد.
  • مرحله چهارم :  در پنجره مربوطه ، دستور Ping  Computer_Name  را تايپ نمائيد . نام کامپيوتر ، مقدار برگردانده شده در اثر اجرای فرمان hostname است .

نتايج : پس از انجام مراحل فوق ، نتايج زير می بايست نشان داده شود :

  • نتيجه يک : نام کامپيوتر (  در اين رابطه هر کامپيوتر دارای نام اختصاصی مربوط به خود خواهد بود )  
  • نتيجه دو  : آدرس IP کامپيوتر ( در اين رابطه هر کامپيوتر دارای آدرس IP مربوط به خود خواهد بود )
مرحله اول : مشخص نمودن نام کامپيوتر

C:> hostname
Srco

مرحله دوم : استفاده از دستور Ping بهمراه نام کامپيوتر

C:> Ping  Srco
Pinging  Srco.Test.com  [ 10.10.1.1]  with 32 bytes of data:

Reply from 10.10.1.1: bytes=32 time<10ms TTL=128
Reply from 10.10.1.1: bytes=32 time<10ms TTL=128
Reply from 10.10.1.1: bytes=32 time<10ms TTL=128
Reply from 10.10.1.1: bytes=32 time<10ms TTL=128

Ping statistics for 10.10.1.1:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms

پروتکل TCP/IP کامپيوترهای مبداء و مقصد را از طريق آدرس IP آنان ، شناسائی می نمايد . کاربران ، تمايل بيشتری  برای بخاطرسپردن و استفاده از اسامی ، نسبت به اعداد ( آدرس های IP )  را دارند . برای آدرس دهی يک کامپيوتر از انواع متفاوتی نام ( user friendly names )  ، استفاده می گردد. ويندوز 2000 ، بمنظور ذخيره سازی اسامی و آدرس IP  معادل آنان  ، از رويکردهای متفاوتی استفاده می گردد .با توجه به نوع نام استفاده شده ، از يک فايل ايستا و يا پويا بمنظور ذخيره نمودن اسامی و آدرس های IP مپ شده به آنان استفاده می گردد . برخی از برنامه ها نظير IE و FTP  ، قادر به استفاده از آدرس IP و يا   نام  برای برقراری ارتباط  با مقصد مورد نظر می باشند .زمانيکه از نام استفاده می گردد ، قبل از آغاز يک ارتباط از طريق پروتکل TCP/IP ، از فرآيندی با نام  Name Resolution استفاده تا آدرس IP  کامپيوتر مورد نظر ، مشخص گردد  . در صورتيکه آدرس IP ، مشخص شده باشد ( در مقابل مشخص شدن  نام ) ،ارتباط بلافاصله برقرارخواهد شد . 

انواع نام
دو نوع نام 
user friendly  وجود دارد : اسامی ميزبان (Host) و اسامی NetBIOS . نام ميزبان ، نامی است که به يک آدرس IP کامپيوترنسبت داده شده  تا آن را بعنوان يک ميزبان TCP/IP مشخص نمايد. نام ميزبان ، می تواند دارای حداکثر 255 کاراکتر ( حروف الفبائی ، کاراکترهای عددی ، نقطه و  hyphens ) باشد . اسامی ميزبان دارای اشکال متفاوتی می باشند . نام مستعار (Alias) و  Domain names  ، دو نمونه متداول در اين زمينه می باشند. نام مستعار، نامی خاص و مرتبط شده به يک آدرس IP است . (نظير : Tehran ) .  يک  Domain name ، بمنظور استفاده بر روی اينترنت سازماندهی و از نقطه بعنوان يک جداکننده استفاده می نمايد ( مثلا" Tehran.Citys.com  ) .
 نام NetBIOS ، يک نام شانزده کاراکتری است که از آن  بمنظور مشخص نمودن يک منبع NetBIOS بر روی شبکه استفاده می گردد . از يک نام NetBIOS ، بمنظور مشخص نمودن يک و يا مجموعه ای از کامپيوترها ، استفاده ميگردد .در اين راستا ، صرفا"  از پانزده حرف اول آن برای نام و از کاراکتر نهائی بمنظور مشخص نمودن منبع و يا سرويسی که به يک کامپيوتر اشاره می نمايد، استفاده می گردد.  نمونه ای از يک منبع NetBIOS ، عنصر File and Print Sharing for Microsoft Networks   در شبکه های مبتنی بر ويندوز 2000 است . زمانيکه کامپيوتر فعاليت خود را آغاز می نمايد ، عنصر فوق ، يک نام منحصر بفرد NetBIOS را ريجستر(ثبت) می نمايد . نام ثبت شده شامل نام کامپيوتر و کاراکتری است که بيانگر عنصر ثبت کننده است ( برای در نظر گرفتن نام کامپيوتر از حداکثر پانزده حرف و برای مشخص نمودن عنصر ثبت کننده نام ، از يک حرف ديگر استفاده می گردد ) . درويندوز 2000 ، نام NetBIOS ، می تواند حداکثر پانزده کاراکتر باشد . ويندوز 2000 ، خود نيازی به اين نوع اسامی نداشته و نسخه های قبلی ويندوز نيازمند استفاده از اسامی NetBIOS بمنظور حمايت از قابليت های شبکه ای، دارند.

Static IP mapping
زمانيکه کاربران يک نام را بمنظور برقراری ارتباط با يک کامپيوتر مقصد ، مشخص می نمايند ، پروتکل TCP/IP  همچنان نيازمند يک آدرس IP برای تحقق انتقال اطلاعات است . در اين راستا لازم است که  نام کامپيوتر به يک آدرس IP  ، مپ گردد. ماحصل عمليات فوق ( mapping ) ، در يک جدول ايستا و يا پويا ذخيره می گردد . در صورتيکه از يک جدول ايستا  استفاده گردد ، نتايج مورد نظر در يکی از فايل های  Hosts و يا Lmhosts ذخيره می گردند( فايل ها ی فوق، متنی می باشند ) . مهمترين مزيت استفاده از يک جدول ايستا ، امکان سفارشی نمودن آن با توجه به ماهيت فايل ( متنی ) و محل ذخيره سازی (  ذخيره  بر روی هر کامپيوتر) آن است. در اين راستا هر يک از کاربران می توانند  برای دستيابی به منابعی با فرکانس بالای دستيابی ، به هر ميزان که ضرورت دارد ، entry در جدول فوق ثبت نمايند . بهنگام سازی جداول ايستا ، يکی از چالش های اصلی در اين زمينه بوده و در موارديکه تعداد آدرس های IP  مپ شده ، زياد و آدرس های فوق متناوبا" تغيير يابند ، بهنگام سازی جداول ايستا مسائل خاص خود را خواهد داشت .

فايل  Hosts  . فايل فوق  ، يک فايل متنی و شامل آدرس های IP مپ شده به اسامی ميزبان است . فايل فوق،  دارای ويژگی های زير است   : 

  • می توان چندين نام ميزبان را به  آدرس IP مشابهی نسبت داد .در اين حالت ، امکان مراجعه به يک سرويس دهنده در آدرس IP : 167.91.45.121  از طريق نام حوزه  Tehran.Citys.Com و يا نام مستعار Tehran وجود خواهد داشت . در اين راستا ، کاربران می توانند بمنظور مراجعه به سرويس دهنده از نام مستعار Tehran در مقابل نام Domain  ، استفاده نمايند .

  • هر Entry در فايل فوق ، با توجه به نوع پلات فرم ،  نسبت به حروف بزرگ و کوچک حساس خواهد بود . در رابطه با کامپيوترهائی که ويندوز 2000 و يا NT بر روی آنها نصب شده است ، حساسيت فوق ، وجود نخواهد داشت . 

فايل LmHosts  . فايل فوق ، يک فايل متنی وشامل آدرس IP مپ شده به نام NetBIOS است . بخشی از فايل Lmhosts در ابتدا وارد حافظه شده و به آن اصطلاحا" NetBIOS name Cache می گويند.

Dynamic IP mapping
مهمترين مزيت جداول پويا ( مسئول ذخيره سازی IP مپ شده ) ، بهنگام سازی اتوماتيک آنان است.در اين راستا ، جداول پويا از دو سرويس استفاده می نمايند : DNS)Domain Name System) و WINS)Windows Internet Neame Service) .   سرويس دهنده DNS و WINS عمليات مشابه ای را نظير فايل های Hosts و Lmhosts انجام خواهند داد ( بدون نياز به پيکربندی دستی ) .

DNS)Domain Name System)
DNS ، روشی بمنظور نامگذاری کامپيوترها و منابع شبکه است . شبکه های مبتنی بر TCP/IP ، از بانک اطلاعاتی اسامی DNS ، بمنظور يافتن کامپيوترها و سرويس ها از طريق اسامی User friendly مربوط به Domain names ، استفاده می نمايند. زمانيکه کاربری نام يک Domain را در برنامه ای وارد ( مشخص ) می نمايد، سرويس دهنده  DNS  ، نام مورد نظر را به IP مربوطه ، map خواهد کرد .ساختار سيستم نامگذاری DNS ،  بصورت سلسله مراتبی است  ، بدين ترتيب امکان استفاده از سيستم فوق،در شبکه های بزرگی نظير اينترنت وجود خواهد شد . با استفاده از يک سيستم سلسله مراتبی بمنظور ايجاد اسامی Domain ، کامپيوترهائی که  اسامی Domain و معادل IP مربوطه را ذخيره می نمايند ، دارای mapping لازم برای صرفا" ناحيه مربوط به خود می باشند . اين نوع از کامپيوترها اصطلاحا" ، سرويس دهنده DNS ، ناميده شده و صرفا" پردازش های لازم برای کامپيوترهائی که در ميدان عملياتی آنان می باشد را انجام خواهند داد . زمانيکه mapping در ناحيه مربوطه تغيير نمايد ، سرويس دهندگان DNS مبتنی بر ويندوز 2000 ، بصورت اتوماتيک عمليات بهنگام سازی را انجام خواهند داد .

WINS)Windows Internet Name Service)  
WINS ، يک بانک اطلاعاتی توزيعی را برای ثبت mapping  پويای اسامی NetBIOS استفاده شده در شبکه ، ارائه می نمايد . WINS ، اسامی NetBIOS را به آدرس های IP مپ و اين امکان را فراهم خواهد آورد که اسامی NetBIOS  در طول روترها ، قابل استفاده باشند .

Name Resoulation در ويندوز 2000
Name Resoulation ، فرآيندی است که بر اساس آن مشکل يک نام برطرف  و يا به يک آدرس IP مپ می گردد . زمانيکه کاربری يک نام را در يک برنامه ، وارد می نمايد، برنامه مشخص می نمايد که نام فوق يک ميزبان و يا يک نام NetBIOS است. برنامه های فعلی در ويندوز 2000 ، از فرآيند host name resolution ، استفاده می نمايند ولی برخی از برنامه های قديمی تر نظير برنامه هائی که مختص ويندوز NT و يا ويندوز 95 , 98 طراحی شده اند ، همچنان از اسامی NetBIOS استفاده می نمايند. در صورتيکه فرآيند فوق ، با موفقيت همراه نگردد ، برنامه  متقاضی  قادر به برقراری ارتباط با مقصد مورد نظر خود نخواهد بود. در صورتيکه از يک آدرس IP استفاده می نمائيد ، name resolution  نياز نخواهد بود .

فرآيند Host name Resolution
آدرس  IP  اسامی ميزبان ( Host Names)  ، با استفاده از فايل Host و يا بکمک  سرويس دهنده DNS  ، مشخص خواهد شد . فرآيند فوق ، بصورت زير انجام خواهد شد .

  • کامپيوتر A دستوری را نظير FTP  بهمراه  نام کامپيوتر ميزبان B  ، وارد می نمايد .

  • کامپيوتر A ، بررسی می نمايد که آيا نام مشخص شده با نام ميزبان محلی مطابقت می نمايد.

  • در صورتيکه نام مشخص شده با نام ميزبان محلی مطابقت ننمايد ، کامپيوتر A ، فايل ميزبانان خود را (Hosts File )  بمنظور آگاهی از کامپيوتر ميزبان B ، جستجو می نمايد. در صورتيکه نام کامپيوتر ميزبان پيدا گردد ، آدرس IP مپ شده به آن ، برگردانده خواهد شد . پس از مشخص شدن  آدرس IP ، زمينه ارتباط با کامپيوتر مورد نظر فراهم خواهد شد . 

  • اگر کامپيوتر A ، نام ميزبان کامپيوتر B را پيدا ننمايد ، در ادامه يک query برای سرويس دهنده DNS ارسال می گردد. در صورتيکه نام ميزبان پيدا گردد ، آدرس IP  نسبت داده شده به آن مشخص خواهد شد.  پس از مشخص شدن آدرس IP ، زمينه ارتباط با کامپيوتر مورد نظر فراهم خواهد شد . 

  • درصورتيکه نام کامپيوتر ميزبان در سرويس دهنده DNS پيدا نگردد ، ويندوز 2000 ، Cache  مربوط به اسامی NetBIOS را بررسی می نمايد .اين امر بدين علت است که ويندوز 2000 ، با   NetBIOS name  بمنزله host name ، رفتار می نمايد.

  • در صورتيکه Cache فوق ،  شامل نام ميزبان مورد نظر نباشد  ، يک query برای سرويس دهنده WINS ارسال می گردد .

  • در صورتيکه سرويس دهنده WINS قادر به حل مشکل نام نباشد ، يک پيام Broadcast  بر روی شبکه ارسال می گردد.

  • در صورتيکه ميزبانی به پيام منتشر شده پاسخ ندهد ، فايل Lmhosts بمنظور نام ميزبان( NetBIOS)  ، بررسی خواهد شد.

فرآيند NetBIOS  Name Resolution
بصورت پيش فرض ، اسامی NetBIOS  بر روی يک شبکه مبتنی بر TCP/IP کار نخواهند کرد . ويندوز 2000 ، امکان برقراری ارتباط  در شبکه های مبتنی بر TCP/IP را برای سرويس گيرندگان NetBIOS ، از طريق پروتکل NetBT ، فراهم می نمايد . NetBT ، از  کلمات NetBIOS over TCP/IP اقتباس شده است . پروتکل فوق ، امکان برقراری ارتباط را برای برنامه های مبتنی بر NetBIOS  ، توسط  TCP/IP و از طريق  ترجمه نام NetBIOS به يک آدرس IP ، فراهم می نمايد . درصورتيکه سرويس دهنده WINS برای استفاده ، پيکربندی  شده  باشد ، فرآيند  NetBIOS Name  Resolution ،   بصورت زير خواهد بود :

  • کامپيوتر A ، دستوری نظير Net use را بهمراه  نام NetBIOS کامپيوتر B ، وارد  می نمايد .

  • کامپيوتر A ، بررسی می نمايد  که آيا نام مشخص شده در Cache  اسامی NetBIOS  ، موجود است .

  • در صورتيکه نام موجود نباشد ، کامپيوتر A يک query  را برای  سرويس دهنده WINS ارسال می دارد.

  • در صورتيکه سرويس دهنده WINS قادر به يافتن نام نباشد ، کامپيوتر A از Broadcast در شبکه ، استفاده می نمايد .

  • در صورتيکه  Broadcast ، قادر به حل مشکل نام نگردد  ، کامپيوتر A ، فايل Lmhosts را بررسی می نمايد.

  • در صورتيکه روش های NetBIOS فوق ،  قادر به حل مشکل نام نگردند  ، کامپيوتر A  ، فايل Hosts را بررسی می نمايد.

  • در نهايت ، کامپيوتر A ، يک query برای يک سرويس دهنده DNS ارسال می نمايد .

TCP/IP ، بمنظور ارسال داده بر روی شبکه  آنها را به بخش های کوچکتری با نام Packets ( بسته های اطلاعاتی ) ، تقسيم می نمايد. از بسته های اطلاعاتی ، بر اساس پروتکل های مرتبط با آنان با واژه های متفاوتی ياد می گردد. تقسيم داده به بسته های اطلاعاتی امری  حياتی و ضروری است . ارسال حجم بالائی از اطلاعات در شبکه ، مدت زمان زيادی  طول خواهد کشيد و همين امر ، باعث کند شدن شبکه  می گردد. در زمانيکه حجم بالائی از اطلاعات در شبکه جابجا می گردد ، ساير کامپيوترهای موجود در شبکه قادر به ارسال اطلاعات نخواهند بود. در چنين حالتی ، اگر در فرآيند انتقال اطلاعات اشکالی بروز نمايد ، می بايست تمامی اطلاعات مجددا" ارسال شوند. در مقابل ، اگر بسته های اطلاعاتی کوچک بر روی شبکه ارسال گردند ، انتقال آنها بسرعت انجام و محيط انتقال به مدت زيادی ، اشغال نخواهد شد . در چنين حالتی در صورتيکه هر يک از بسته های اطلاعاتی با مشکل مواجه شوند ، صرفا"  بسته اطلاعاتی  ک

درباره وبلاگ


وبلاگ اختصاصی گروه نرم افزاری پروژه 1 شما در این وبلاگ می توانید از مطالب و آموزش های گروه استفاده کنید
آخرین مطالب

پيوندها


تبادل لینک هوشمند
برای تبادل لینک  ابتدا ما را با عنوان بزرگترین وبلاگ دانلود و ارائه مقالات رشته کامپیوتر و آدرس prozhe1.LXB.ir لینک نمایید سپس مشخصات لینک خود را در زیر نوشته . در صورت وجود لینک ما در سایت شما لینکتان به طور خودکار در سایت ما قرار میگیرد.







ورود اعضا:

آمار وب سایت:
 

بازدید امروز : 1
بازدید دیروز : 7
بازدید هفته : 1
بازدید ماه : 767
بازدید کل : 219451
تعداد مطالب : 163
تعداد نظرات : 1
تعداد آنلاین : 1